An efficient way to perform the assembly of finite element matrices in Matlab and Octave
نویسندگان
چکیده
We describe different optimization techniques to perform the assembly of finite element matrices in Matlab and Octave, from the standard approach to recent vectorized ones, without any low level language used. We finally obtain a simple and efficient vectorized algorithm able to compete in performance with dedicated software such as FreeFEM++. The principle of this assembly algorithm is general, we present it for different matrices in the P1 finite elements case and in linear elasticity. We present numerical results which illustrate the computational costs of the different approaches. Key-words: P1 finite elements, matrix assembly, vectorization, linear elasticity, Matlab, Octave This work was partially supported by the GNR MoMaS (PACEN/CNRS, ANDRA, BRGM, CEA, EDF, IRSN) ̊ Université Paris 13, Sorbonne Paris Cité, LAGA, CNRS UMR 7539, 99 Avenue J-B Clément, 93430 Villetaneuse, France, Emails: [email protected], [email protected], [email protected] § INRIA Paris-Rocquencourt, project-team Pomdapi, 78153 Le Chesnay Cedex, France Email:[email protected] Optimisation de l’assemblage de matrices éléments finis sous Matlab et Octave Résumé : L’objectif est de décrire différentes techniques d’optimisation, sous Matlab/Octave, de routines d’assemblage de matrices éléments finis, en partant de l’approche classique jusqu’aux plus récentes vectorisées, sans utiliser de langage de bas niveau. On aboutit au final à une version vectorisée rivalisant, en terme de performance, avec des logiciels dédiés tels que FreeFEM++. Les descriptions des différentes méthodes d’assemblage étant génériques, on les présente pour différentes matrices dans le cadre des éléments finis P1 ́Lagrange en dimension 2 et en élasticité linéaire. Des résultats numériques sont donnés pour illustrer les temps calculs des méthodes proposées. Mots-clés : éléments finis P1, assemblage de matrices, vectorisation, élasticité linéaire, Matlab, Octave An efficient way to perform the assembly of finite element matrices in Matlab and Octave3
منابع مشابه
An efficient way to perform the assembly of finite element matrices in vector languages
Efficient Matlab codes in 2D and 3D have been proposed recently to assemble finite element matrices. In this paper we present simple, compact and efficient vectorized algorithms, which are variants of these codes, in arbitrary dimension, without the use of any lower level language. They can be easily implemented in many vector languages (e.g. Matlab, Octave, Python, Scilab, R, Julia, C++with ST...
متن کاملCoupling Nonlinear Element Free Galerkin and Linear Galerkin Finite Volume Solver for 2D Modeling of Local Plasticity in Structural Material
This paper introduces a computational strategy to collaboratively develop the Galerkin Finite Volume Method (GFVM) as one of the most straightforward and efficient explicit numerical methods to solve structural problems encountering material nonlinearity in a small limited area, while the remainder of the domain represents a linear elastic behavior. In this regard, the Element Free Galerkin met...
متن کاملFree Vibration Analysis of a Sloping-frame: Closed-form Solution versus Finite Element Solution and Modification of the Characteristic Matrices (TECHNICAL NOTE)
This article deals with the free vibration analysis and determination of the seismic parameters of a sloping-frame which consists of three members; a horizontal, a vertical, and an inclined member. The both ends of the frame are clamped, and the members are rigidly connected at joint points. The individual members of the frame are assumed to be governed by the transverse vibration theory of an ...
متن کاملFast MATLAB assembly of FEM matrices in 2D and 3D: Nodal elements
We propose an effective and flexible way to assemble finite element stiffness and mass matrices in MATLAB. The major loops in the code have been vectorized using the so called array operation in MATLAB, and no low level languages like the C or Fortran has been used for the purpose. The implementation is based on having the vectorization part separated, in other words hidden, from the original c...
متن کاملFinite element model updating of a geared rotor system using particle swarm optimization for condition monitoring
In this paper, condition monitoring of a geared rotor system using finite element (FE) model updating and particle swarm optimization (PSO) method is onsidered. For this purpose, employing experimental data from the geared rotor system, an updated FE model is obtained. The geared rotor system under study consists of two shafts, four bearings, and two gears. To get the experimental data, iezoel...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1305.3122 شماره
صفحات -
تاریخ انتشار 2013